In the modern digital age, there is a vast amount of data publicly available stored in various types of data-stores or databases around the world. A person may retrieve desired portions of the data using various methods. A very convenient and widely employed method is through the Internet via either wired or wireless connections and using appropriate communication protocols. Alternatively, portions of data maybe retrieved from data-stores or databases directly using suitable query languages.
In such a distributed system where information is stored at many different locations, it is not unusual that information relating to a single subject matter may be stored at multiple locations. For example, suppose a person is interested in a particular political candidate in the upcoming election and wants to learn all he can about the candidate in order to make an informed decision on whether or not to vote for her in the election. There are many sources from where the person may obtain information about the candidate. Background information about the candidate or the candidate's political views and positions may be found at websites sponsored by the candidate's political party or supporters or informational websites (e.g., wikipedia). News stories about the candidate may be found at news agencies' websites (e.g., CNN or The New York Times) or via live news feeds (e.g. Yahoo!® News or Google™ News). Private discussions or posts about the candidate may be found in different news groups or at different blog sites. Images or videos of the candidate may be found at image or video sharing websites (e.g. flickr™, YouTube™, or digg™). As a result, in order to obtain a comprehensive collection of information about the candidate, the person often needs to visit many different sources (i.e., websites, news groups, live feeds, blogs, etc.).
It would be more convenient and helpful if a single centralized service existed that would retrieve information about a particular subject matter (e.g., the political candidate) from multiple sources, combine the results, organize the information in a suitable fashion, and present the complete final results to the person. Unfortunately, combining and processing data obtained from different sources may be difficult at times because there are many different formats that may be used to represent a set of data, and often, each format has very different syntaxes. Consequently, multiple data sets having different formats cannot be combined readily because of the conflicts in their respective syntaxes.